/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package dao;

import entidades.Dados_Fornecedor;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import util.ConnectionFactory;

/**
 *
 * @author SERVIDOR
 */
public class Dados_FornecedorDAO {
    public void AddDadosFornecedor(Dados_Fornecedor dados_fornecedor) {
        String sql = "INSERT INTO dados_fornecedor(CNPJ,conta,agencia,banco,fax)"
                + " VALUES(?,?,?,?,?)";

        Connection conn = null;
        PreparedStatement pstm = null;
        try {
            // Cria uma conexÃ£o com o banco
            conn = ConnectionFactory.getConexao();

            // Cria um PreparedStatment, classe usada para executar a query
            pstm = conn.prepareStatement(sql);
            pstm.setString(1, dados_fornecedor.getCNPJ());
            pstm.setString(2, dados_fornecedor.getConta());
            pstm.setString(3, dados_fornecedor.getAgencia());
            pstm.setString(4, dados_fornecedor.getBanco());
            pstm.setString(5, dados_fornecedor.getFax());
                    
            // Executa a sql para inserÃ§Ã£o dos dados
            pstm.execute();

        } catch (Exception e) {

            e.printStackTrace();
        } finally {

            // Fecha as conexÃµes
            try {
                if (pstm != null) {

                    pstm.close();
                }

                if (conn != null) {
                    conn.close();
                }

            } catch (Exception e) {

                e.printStackTrace();
            }
        }
    }

    public Dados_Fornecedor getDadosFornecedor(int id) {

        String sql = "SELECT * FROM dados_fornecedor where id_dados_fornecedor = ?";

        Connection conn = null;
        PreparedStatement pstm = null;
        // Classe que vai recuperar os dados do banco de dados
        ResultSet rset = null;

        try {
            conn = ConnectionFactory.getConexao();

            pstm = conn.prepareStatement(sql);
            pstm.setInt(1, id);

            rset = pstm.executeQuery();
            
            Dados_Fornecedor dados_fornecedor = new Dados_Fornecedor();
            // Enquanto existir dados no banco de dados, faÃ§a
            while (rset.next()) {

                // Recupera o nome do banco e atribui ele ao objeto
                dados_fornecedor.setCNPJ(rset.getString("CNPJ"));

                // Recupera a idade do banco e atribui ele ao objeto
                dados_fornecedor.setBanco(rset.getString("banco"));

                dados_fornecedor.setAgencia(rset.getString("agencia"));
                
                dados_fornecedor.setConta(rset.getString("conta"));

                dados_fornecedor.setFax(rset.getString("fax"));
                // Adiciono o contato recuperado, a lista de contatos
                return dados_fornecedor ;
            }
        } catch (Exception e) {

            e.printStackTrace();
        } finally {

            try {

                if (rset != null) {

                    rset.close();
                }

                if (pstm != null) {

                    pstm.close();
                }

                if (conn != null) {
                    conn.close();
                }

            } catch (Exception e) {

                e.printStackTrace();
            }
        }

        return null;
    }
}
